

import * as ConfigHelp from "./ConfigHelp"

const loadNum = 29;
export interface AConfig {
    content_schema: object
    content: object
}
export class configMaps {
    loadCount: number;

    /** 屏蔽词 */

    public bad_words_config!: { [key: number]: bad_words; }
    /** 基本属性 */

    public base_attribute_config!: { [key: number]: base_attribute; }
    /** 战斗NPC */

    public battle_npc_config!: { [key: number]: battle_npc; }
    /** 体型 */

    public body_config!: { [key: string]: body; }
    /** 伤害子弹 */

    public bullet_config!: { [key: string]: bullet; }
    /** 抓取buff */

    public caught_buff_config!: { [key: string]: caught_buff; }
    /** 角色 */

    public character_config!: { [key: number]: character; }
    /** 交互行动 */

    public interaction_config!: { [key: string]: interaction; }
    /** 物品 */

    public item_config!: { [key: number]: item; }
    /** 锁定媒介 */

    public lock_area_config!: { [key: string]: lock_area; }
    /** 其他 */

    public other_config_config!: { [key: number]: other_config; }
    /** 被动属性 */

    public passive_config!: { [key: number]: passive; }
    /** 普通buff */

    public play_buff_config!: { [key: number]: play_buff; }
    /** 道具技能 */

    public prop_config!: { [key: number]: prop; }
    /** 推动buff */

    public push_buff_config!: { [key: string]: push_buff; }
    /** 雷达波媒介 */

    public radar_wave_config!: { [key: string]: radar_wave; }
    /** rogue游戏章节 */

    public rogue_game_chapter_config!: { [key: number]: rogue_game_chapter; }
    /** 自作用媒介 */

    public self_effect_config!: { [key: string]: self_effect; }
    /** 字符串表 */

    public show_text_config!: { [key: string]: show_text; }
    /** 技能 */

    public skill_config!: { [key: string]: skill; }
    /** 技能组 */

    public skill_group_config!: { [key: string]: skill_group; }
    /** 瞄准 */

    public snipe_config!: { [key: number]: snipe; }
    /** 标准升级 */

    public standard_level_up_config!: { [key: number]: standard_level_up; }
    /** 召唤媒介 */

    public summon_config!: { [key: string]: summon; }
    /** 天赋 */

    public talent_config!: { [key: number]: talent; }
    /** 陷阱 */

    public trap_config!: { [key: string]: trap; }
    /** 载具 */

    public vehicle_config!: { [key: number]: vehicle; }
    /** 武器 */

    public weapon_config!: { [key: number]: weapon; }
    /** 地图 */

    public map_raws_config!: { [key: number]: map_raws; }
    constructor() {
        this.loadCount = 0;

        ConfigHelp.ConfigHelp.getConfig("bad_words", (a) => {
            const jsonAsset = a.json as AConfig
            this.bad_words_config = jsonAsset.content as { [key: number]: bad_words; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("base_attribute", (a) => {
            const jsonAsset = a.json as AConfig
            this.base_attribute_config = jsonAsset.content as { [key: number]: base_attribute; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("battle_npc", (a) => {
            const jsonAsset = a.json as AConfig
            this.battle_npc_config = jsonAsset.content as { [key: number]: battle_npc; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("body", (a) => {
            const jsonAsset = a.json as AConfig
            this.body_config = jsonAsset.content as { [key: string]: body; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("bullet", (a) => {
            const jsonAsset = a.json as AConfig
            this.bullet_config = jsonAsset.content as { [key: string]: bullet; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("caught_buff", (a) => {
            const jsonAsset = a.json as AConfig
            this.caught_buff_config = jsonAsset.content as { [key: string]: caught_buff; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("character", (a) => {
            const jsonAsset = a.json as AConfig
            this.character_config = jsonAsset.content as { [key: number]: character; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("interaction", (a) => {
            const jsonAsset = a.json as AConfig
            this.interaction_config = jsonAsset.content as { [key: string]: interaction; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("item", (a) => {
            const jsonAsset = a.json as AConfig
            this.item_config = jsonAsset.content as { [key: number]: item; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("lock_area", (a) => {
            const jsonAsset = a.json as AConfig
            this.lock_area_config = jsonAsset.content as { [key: string]: lock_area; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("other_config", (a) => {
            const jsonAsset = a.json as AConfig
            this.other_config_config = jsonAsset.content as { [key: number]: other_config; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("passive", (a) => {
            const jsonAsset = a.json as AConfig
            this.passive_config = jsonAsset.content as { [key: number]: passive; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("play_buff", (a) => {
            const jsonAsset = a.json as AConfig
            this.play_buff_config = jsonAsset.content as { [key: number]: play_buff; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("prop", (a) => {
            const jsonAsset = a.json as AConfig
            this.prop_config = jsonAsset.content as { [key: number]: prop; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("push_buff", (a) => {
            const jsonAsset = a.json as AConfig
            this.push_buff_config = jsonAsset.content as { [key: string]: push_buff; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("radar_wave", (a) => {
            const jsonAsset = a.json as AConfig
            this.radar_wave_config = jsonAsset.content as { [key: string]: radar_wave; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("rogue_game_chapter", (a) => {
            const jsonAsset = a.json as AConfig
            this.rogue_game_chapter_config = jsonAsset.content as { [key: number]: rogue_game_chapter; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("self_effect", (a) => {
            const jsonAsset = a.json as AConfig
            this.self_effect_config = jsonAsset.content as { [key: string]: self_effect; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("show_text", (a) => {
            const jsonAsset = a.json as AConfig
            this.show_text_config = jsonAsset.content as { [key: string]: show_text; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("skill", (a) => {
            const jsonAsset = a.json as AConfig
            this.skill_config = jsonAsset.content as { [key: string]: skill; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("skill_group", (a) => {
            const jsonAsset = a.json as AConfig
            this.skill_group_config = jsonAsset.content as { [key: string]: skill_group; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("snipe", (a) => {
            const jsonAsset = a.json as AConfig
            this.snipe_config = jsonAsset.content as { [key: number]: snipe; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("standard_level_up", (a) => {
            const jsonAsset = a.json as AConfig
            this.standard_level_up_config = jsonAsset.content as { [key: number]: standard_level_up; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("summon", (a) => {
            const jsonAsset = a.json as AConfig
            this.summon_config = jsonAsset.content as { [key: string]: summon; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("talent", (a) => {
            const jsonAsset = a.json as AConfig
            this.talent_config = jsonAsset.content as { [key: number]: talent; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("trap", (a) => {
            const jsonAsset = a.json as AConfig
            this.trap_config = jsonAsset.content as { [key: string]: trap; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("vehicle", (a) => {
            const jsonAsset = a.json as AConfig
            this.vehicle_config = jsonAsset.content as { [key: number]: vehicle; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("weapon", (a) => {
            const jsonAsset = a.json as AConfig
            this.weapon_config = jsonAsset.content as { [key: number]: weapon; }
            this.loadCount++
        })

        ConfigHelp.ConfigHelp.getConfig("map_raws", (a) => {
            const jsonAsset = a.json as AConfig
            this.map_raws_config = jsonAsset.content as { [key: number]: map_raws; }
            this.loadCount++
        })


    }

    /**获取读取配置进度*/
    public GetLoadProcessNum(): [number, number] {
        return [this.loadCount, loadNum]
    }
    /** 查看是否读取完成 */
    public CheckOk(): boolean {
        return this.loadCount == loadNum;
    }

}
export interface bad_words {
    /** :  */
    id: number;
    /** :  */
    name: string;
}
export interface base_attribute {
    /** :  */
    id: number;
    /** :  */
    info: string;
    /** :  */
    MoveMaxSpeed: number;
    /** :  */
    MoveAddSpeed: number;
    /** :  */
    MoveMinSpeed: number;
    /** :  */
    RecycleMulti: number;
    /** :  */
    Atk: number;
    /** :  */
    ShardedNum: number;
    /** :  */
    MaxAmmo: number;
    /** :  */
    ReloadMulti: number;
    /** :  */
    BackStabAdd: number;
    /** :  */
    MaxHP: number;
    /** :  */
    HealEffect: number;
    /** :  */
    MaxArmor: number;
    /** :  */
    ArmorDefence: number;
    /** :  */
    ArmorFixEffect: number;
    /** :  */
    MaxShield: number;
    /** :  */
    ShieldDelayTime: number;
    /** :  */
    ShieldChargeEffect: number;
    /** :  */
    ShieldRecover: number;
    /** :  */
    ShieldInstability: number;
    /** :  */
    MaxTrapNum: number;
    /** :  */
    TrapAtkMulti: number;
    /** :  */
    TrapSurvivalMulti: number;
    /** :  */
    HPAbsorb: number;
    /** :  */
    ArmorAbsorb: number;
    /** :  */
    ShieldAbsorb: number;
    /** :  */
    AmmoAbsorb: number;
    /** :  */
    ProtectAbsorb: number;
}
export interface battle_npc {
    /** :  */
    id: number;
    /** 说明:  */
    info: string;
    /** 体型:  */
    BodyId: string;
    /** 属性id:  */
    AttrId: number;
    /** 携带武器:  */
    Weapons: number[];
    /** 武器组上限:  */
    MaxWeaponSlot: number;
    /** :  */
    PropIds: number[];
    /** :  */
    PropPoint: number;
    /** 全体奖励:  */
    AllDrops: Gain[];
    /** 击杀奖励:  */
    KillDrops: Gain[];
    /** 座驾 0表示没有:  */
    WithVehicleId: number;
    /** 掉落交互物类型:  */
    DropMapInteractableType: string;
    /** 掉落交互物类型:  */
    DropMapInteractableId: number;
    /** 被动范围:  */
    PassiveRange: number[];
    /** 被动数量:  */
    PassiveNum: number;
    /** :  */
    ActWeight: SimpleObj4[];
    /** :  */
    DoNotMinMaxTime: [number, number];
    /** 反应提示时间:  */
    ActShowDelayTime: number;
    /** :  */
    MaxCombo: number;
}
export interface body {
    /** id:  */
    id: string;
    /** :  */
    mass: number;
    /** :  */
    rad: number;
}
export interface bullet {
    /** id:  */
    id: string;
    /** 形状类型 1长方形 2圆形 3扇形 4线段 :  */
    ShapeType: string;
    /** 形状参数 1:矩形（长宽）2圆形半径 3扇形（上顶点坐标）4线段（长度）:  */
    ShapeParams: number[];
    /** 本地位置:  */
    LocalPos: Point;
    /** 本地旋转：度数:  */
    LocalRotate: number;
    /** 攻击成功给对手的硬直状态:  */
    SuccessAntiActBuffConfigToOpponent: Buff[];
    /** :  */
    CanOverBulletBlock: boolean;
    /** j打击类型：range远程，失败触发吸收，melee近战，触发反击:  */
    HitType: string;
    /** 攻击失败获得的硬直状态,每个类型角色可以不一样，找不到使用默认的： 0：默认 1小型 2：中型 3：大型 :  */
    FailActBuffConfigToSelf: Buff[];
    /** 成功命中停顿帧数给自己:  */
    PauseToCaster: number;
    /** 成功命中停顿帧数给对手:  */
    PauseToOpponent: number;
    /** 目标类型 0:敌方 1己方:  */
    TargetType: string;
    /** 攻击坚韧值: -1会按时间生成 */
    Tough: number;
    /** 属于慢速攻击：慢速攻击会被不攻击反制: Tough=-1时自动计算并覆盖 */
    IsHAtk: boolean;
    /** 保护值:  */
    ProtectValue: number;
    /** :  */
    SuccessAmmoAdd: number;
    /** 0为默认值为释放时间加成:  */
    DamageMulti: number;
}
export interface caught_buff {
    /** id:  */
    id: string;
    /** stun时间:  */
    LastTime: number;
    /** 抓取移动点，移动完抓取结束:  */
    CatchKeyPoints: SimpleObj5[];
    /** 同时触发的技能:  */
    TrickSkill: string;
}
export interface character {
    /** :  */
    id: number;
    /** 说明:  */
    info: string;
    /** 体型:  */
    BodyId: string;
    /** 属性id:  */
    AttrId: number;
    /** 武器:  */
    Weapons: number[];
    /** 最大携带数:  */
    MaxWeaponSlot: number;
}
export interface interaction {
    /** :  */
    id: string;
    /** 基础坚韧:  */
    BaseTough: number;
    /** 必须总时间:  */
    TotalTime: number;
}
export interface item {
    /** id:  */
    id: number;
    /** 名字:  */
    Name: string;
    /** 配置名字，another_name为关键字，道具配置依靠此翻译为道具货币id:  */
    another_name: string;
    /** 图标:  */
    Icon: string;
    /** 类型:  */
    ItemType: string;
    /** 游戏用道具:  */
    IsPlayingItem: boolean;
    /** 结束清除:  */
    IsEndClear: boolean;
    /** :  */
    MaxStack: number;
    /** :  */
    ShowType: number;
}
export interface lock_area {
    /** id:  */
    id: string;
    /** 形状类型 1长方形 2圆形 3扇形 4线段 :  */
    ShapeType: string;
    /** 形状参数:  */
    ShapeParams: number[];
    /** 本地位置:  */
    LocalPos: Point;
    /** 本地旋转：度数:  */
    LocalRotate: number;
}
export interface other_config {
    /** 识别序号:  */
    id: number;
    /** 最大高度:  */
    max_hegiht: number;
    /** g加速度:  */
    g_acc: number;
    /** :  */
    friction: number;
    /** :  */
    tough_grow: number;
    /** :  */
    mid_tough: number;
    /** :  */
    weapon_num: number;
    /** :  */
    two_s_to_see_pertick: number;
    /** :  */
    two_s_to_see_pertick_medium_vehicle: number;
    /** :  */
    qspace_max_per_level: number;
    /** :  */
    hit_wall_add_time_by_speed_param: number;
    /** :  */
    hit_wall_dmg_param: number;
    /** :  */
    hit_wall_catch_time_param: number;
    /** :  */
    hit_wall_catch_dmg_param: number;
    /** 左上点长:  */
    sight_length: number;
    /** 半宽:  */
    sight_width: number;
    /** :  */
    common_fail_antibuff: string;
    /** :  */
    tick_time: number;
    /** :  */
    interaction_act2_call_time: number;
    /** 标准保护值:  */
    trick_protect_value: number;
    /** 保护时间:  */
    protect_time: number;
    /** 标准最大道具数量:  */
    standard_max_prop_stack: number;
    /** 标准回收道具数量:  */
    standard_recycle_prop_stack: number;
    /** 道具半径:  */
    prop_R: number;
    /** 武器半径:  */
    weapon_R: number;
    /** 被动半径:  */
    pass_R: number;
    /** 售卖盒半径:  */
    saleBox_R: number;
    /** 至多陷阱数量:  */
    up_trap_max: number;
    /** rogue模式复活限制时间:  */
    rogue_reborn_limit_time: number;
    /** 碎片攻击倍数:  */
    ShardedAttackMulti: number;
    /** 减速速度偏角最小Cos，小于减速到最低倍数:  */
    DecreaseMinCos: number;
    /** 正常速度偏角最小Cos，小于开始减速倍数:  */
    NormalSpeedMinCos: number;
    /** 减速到最小时的速度倍数:  */
    MoveDecreaseMinMulti: number;
    /** :  */
    atkPassBuffId: number;
    /** :  */
    defPassBuffId: number;
    /** 传送相对角色增加半径:  */
    tele_gap: number;
    /** :  */
    RogueChapters: number[];
    /** rogue模式复活要求:  */
    rogue_reborn_cost: Gain[];
    /** rogue模式复活计时时间:  */
    rogueRebornCountDownTime: number;
    /** :  */
    rogueGameCheckTickTime: number;
}
export interface passive {
    /** :  */
    id: number;
    /** :  */
    info: string;
    /** :  */
    passive_effect_type: string;
    /** :  */
    recycle_money: Gain[];
    /** :  */
    param_values: number[];
}
export interface play_buff {
    /** id:  */
    id: number;
    /** :  */
    LastTime: number;
    /** :  */
    EffectType: string;
    /** :  */
    EffectValue: number;
    /** :  */
    StackMode: string;
    /** :  */
    UseStack: boolean;
}
export interface prop {
    /** :  */
    id: number;
    /** :  */
    Info: string;
    /** 消费道具:  */
    PropPointCost: number;
    /** 0 普通1 被控制:  */
    UseCond: number;
    /** 基础坚韧:  */
    BaseTough: number;
    /** :  */
    LaunchTimeToEffectM: { [key: number]: Media; };
    /** :  */
    BotUseCondType: string;
    /** :  */
    BotUseCondParam: number[];
    /** :  */
    PropMustTime: number;
    /** 移动速度比率:  */
    MoveSpeedMulti: number;
    /** 锁定方向:  */
    LockAim: boolean;
    /** 叠加运动开始时间,0为没有:  */
    MoveAddStartTime: number;
    /** 叠加强制运动速度，x 轴为正前方，米每秒:  */
    MoveAdds: Point[];
}
export interface push_buff {
    /** id:  */
    id: string;
    /** :  */
    LastTime: number;
    /** 0：无UpForce:  */
    BuffType: number;
    /** :  */
    PushForce: number;
    /** 1方向 2中心:  */
    PushType: string;
    /** 1方向：修正的方向 2中心：修正的中心点 留空等于不修正默认:  */
    FixVector: Point[];
    /** :  */
    UpForce: number;
}
export interface radar_wave {
    /** id:  */
    id: string;
    /** 形状类型 1长方形 2圆形 3扇形 4线段 :  */
    ShapeType: string;
    /** 形状参数 1:矩形（长宽）2圆形半径 3扇形（上顶点坐标）4线段（长度）:  */
    ShapeParams: number[];
    /** 本地位置:  */
    LocalPos: Point;
    /** 本地旋转：度数:  */
    LocalRotate: number;
}
export interface rogue_game_chapter {
    /** id:  */
    id: number;
    /** :  */
    SmallMapResRandIn: number[];
    /** :  */
    StartRandIn: number[];
    /** :  */
    BigMapResRandIn: number[];
    /** :  */
    BossMapRandIn: number[];
    /** :  */
    HangarMapResRandIn: number[];
    /** :  */
    VendorMapResRandIn: number[];
    /** :  */
    SmallMap: number;
    /** :  */
    BigMap: number;
    /** :  */
    VendorMap: number;
    /** :  */
    VendorMapStart: number;
    /** :  */
    VendorMapRange: number;
    /** :  */
    HangarMap: number;
    /** :  */
    HangarMapStart: number;
    /** :  */
    HangarMapRange: number;
    /** :  */
    StartWithBig: boolean;
    /** :  */
    EndWithBig: boolean;
    /** :  */
    CreepRandIn: number[];
    /** :  */
    EliteRandomIn: number[];
    /** :  */
    SmallCreepNum: number;
    /** :  */
    SmallEliteNum: number;
    /** :  */
    SmallBossCreepRandIn: number[];
    /** :  */
    BigCreepNum: number;
    /** :  */
    BigEliteNum: number;
    /** :  */
    BigBossCreepRandIn: number[];
}
export interface self_effect {
    /** id:  */
    id: string;
    /** :  */
    HealMulti: number;
    /** :  */
    FixMulti: number;
    /** :  */
    ShieldMulti: number;
    /** :  */
    ReloadMulti: number;
    /** :  */
    AddPlayBuffs: number[];
}
export interface show_text {
    /** id:  */
    id: string;
    /** 配置名字，another_name为关键字，道具配置依靠此翻译为道具货币id:  */
    chinese: string;
}
export interface skill {
    /** :  */
    id: string;
    /** 消费弹药:  */
    AmmoCost: number;
    /** 发动需要武器瞄准步数，:  */
    SnipeStepNeed: number;
    /** 基础坚韧:0值会根据子弹发射最快的自动计算:  */
    BaseTough: number;
    /** 在第一帧选目标的区域，空代表没有，如果选定目标，技能产生的移动会向目标调整,抓取引发的技能无效，因为技能发动时距离已设定好:  */
    LockArea: string;
    /** 帧时--发射的子弹Id，时间会自动转换，从1开始，配置0帧的技能会无效:  */
    LaunchTimeToBullet: { [key: number]: string; };
    /** 从开始可以控制移动的时间，0表示不可控制:  */
    CanInputMove: number;
    /** 移动开始时间:  */
    MoveStartTime: number;
    /** 运动每帧，角色0度默认为水平向右，:  */
    Moves: Point[];
    /** 瞄准状态破坏Time：0代表不打消:  */
    BreakSnipeTime: number;
    /** 技能必须帧（技能在释放完这些帧之前不能取消）:  */
    SkillMustTime: number;
    /** 下个技能可输入帧:  */
    ComboInputStartTime: number;
    /** 技能完整帧数:  */
    SkillMaxTime: number;
    /** 下个技能状态值:  */
    NextCombo: number;
}
export interface skill_group {
    /** :  */
    id: string;
    /** 操作1：动作状态-技能:  */
    Op1: { [key: number]: string; };
    /** 操作2：动作状态-技能:  */
    Op2: { [key: number]: string; };
    /** 操作3：动作状态-技能:  */
    Op3: { [key: number]: string; };
    /** Switch：动作状态-技能:  */
    Switch: { [key: number]: string; };
}
export interface snipe {
    /** id:  */
    id: number;
    /** :  */
    TrickTick: number;
    /** :  */
    TotalStep: number;
    /** :  */
    OnTickSpeed: number;
    /** :  */
    OffTickSpeed: number;
    /** 原始值:  */
    MoveMulti: number;
}
export interface standard_level_up {
    /** :  */
    id: number;
    /** :  */
    next_exp: number;
    /** :  */
    RebornTime: number;
    /** :  */
    UpPassiveGet: number[];
    /** :  */
    FastRebornCost: Gain[];
    /** :  */
    TeamBonus: Gain[];
    /** :  */
    KillBonus: Gain[];
}
export interface summon {
    /** id:  */
    id: string;
    /** :  */
    Setter: string;
}
export interface talent {
    /** :  */
    id: number;
    /** : 被动技能Id */
    passive_id: number;
    /** :  */
    activeLevel: number;
    /** :  */
    activeCost: Cost[];
    /** :  */
    addLevel: number;
    /** :  */
    addLevelBaseCost: Cost;
    /** :  */
    addLevelAddCost: Cost;
}
export interface trap {
    /** :  */
    id: string;
    /** 体型:  */
    BodyId: string;
    /** 属性id:  */
    AttrId: number;
    /** :  */
    CanBeSee: boolean;
    /** 打击失败次数，如果打击失败则增加1: 0代表没有 */
    FailChance: number;
    /** : 至少为2个tick这个是额外的 */
    CallTrapRoundTime: number;
    /** : 0代表永续 */
    MaxLifeTime: number;
    /** : 周期发射的Media */
    TrapMedia: Media;
    /** : 通过TrapMedia触发的Media */
    LauchMedia: Media[];
    /** : 触发延迟，0保底1tick */
    TrickDelayTime: number;
    /** : 触发次数，如果 */
    TrickStack: number;
    /** 伤害倍率: 伤害倍率，这个与释放装置的角色攻击有关 */
    DamageMulti: number;
}
export interface vehicle {
    /** :  */
    id: number;
    /** 体型:  */
    BodyId: string;
    /** 属性id:  */
    AttrId: number;
    /** :  */
    DestoryDelayTime: number;
    /** :  */
    DestoryBullet: string;
    /** :  */
    Weapons: number[];
    /** :  */
    MaxWeaponSlot: number;
    /** :  */
    OutActSkill: string;
    /** :  */
    VScope: Point;
}
export interface weapon {
    /** id:  */
    id: number;
    /** :  */
    BodySizeUseAndSnipeSpeedFix: SimpleObj6[];
    /** j机器人使用射程:  */
    BotRange: number;
    /** :  */
    MaxRangeMulti: number;
    /** :  */
    ChangeRangeStep: number;
    /** :  */
    Snipe1: number;
    /** :  */
    Snipe2: number;
    /** :  */
    Snipe3: number;
}
export interface map_raws {
    /** :  */
    id: number;
    /** :  */
    info: string;
    /** :  */
    WalkRawMap: Point[][];
    /** :  */
    SightRawMap: Point[][];
    /** :  */
    BulletRawMap: Point[][];
    /** :  */
    StartPoints: Point[][];
    /** :  */
    TransPoint: TelPoint[];
}
export interface Gain { item: number; num: number; }
export interface SimpleObj4 { weight: number; op: string; }
export interface Point { x: number; y: number; }
export interface Buff { size: string; buff_type: string; buff_id: string; }
export interface SimpleObj5 { key_time: number; key_point: Point; }
export interface Media { media_type: string; e_id: string; }
export interface Cost { item: number; num: number; first_use_pay: number; }
export interface SimpleObj6 { body: string; snipe_speed_fix: number; skill_group: string; }
export interface TelPoint { Direction: string; Teleport: Point[]; }